<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>两数相加-链表</title>
</head>

<body>
  <div>
    <p>给出两个&nbsp;<strong>非空</strong>
      的链表用来表示两个非负的整数。其中，它们各自的位数是按照&nbsp;<strong>逆序</strong>&nbsp;的方式存储的，并且它们的每个节点只能存储&nbsp;<strong>一位</strong>&nbsp;数字。
    </p>

    <p>如果，我们将这两个数相加起来，则会返回一个新的链表来表示它们的和。</p>

    <p>您可以假设除了数字 0 之外，这两个数都不会以 0&nbsp;开头。</p>

    <p><strong>示例：</strong></p>
    <pre><strong>输入：</strong>(2 -&gt; 4 -&gt; 3) + (5 -&gt; 6 -&gt; 4)
    <strong>输出：</strong>7 -&gt; 0 -&gt; 8
    <strong>原因：</strong>342 + 465 = 807
    </pre>
  </div>
  <script>

    /**
 * Definition for singly-linked list.
 * function ListNode(val) {
 *     this.val = val;
 *     this.next = null;
 * }
 */
    /**
     * @param {ListNode} l1
     * @param {ListNode} l2
     * @return {ListNode}
     */

    //  链表结构的理解和数据之间的转换
    var addTwoNumbers = function (l1, l2) {
      let arr1 = [l1.value]
      let arr2 = [l2.value]
      while (l1.next !== null) {
        arr1.push(l1.next)
        arr2.push(l2.next)
      }
      const num1 = Number(arr1.reverse().join())
      const num2 = Number(arr2.reverse().join())
      const sum = num1 + num2
      const sumArr = String(sum).split()

    };




  </script>
</body>

</html>